1. Field
This disclosure is generally related to activity-based recommender systems. More specifically, this disclosure is related to selecting an optimal subset of users to use as a basis for generating a group-activity model for a population of users.
2. Related Art
Advances in mobile computing have allowed people to consume digital information at any place and any time. It is common for laptops to boast a sufficiently long battery life to allow a user to complete a near full day of work on a single charge. If the user needs an Internet connection, the user is oftentimes able to find a public Wi-Fi hot spot at a local coffee shop or a public venue such as a park. As another example, the capabilities of smartphones have increased drastically to rival the computing abilities of laptops, while also providing steady access to the Internet through a cellular network. These advances have allowed users to perform their computing tasks at a coffee shop, on a park bench, or virtually anywhere. Oftentimes, a user may take his mobile phone out from his pocket for brief moments at a time to play a quick game while riding in a bus, to read the news while waiting in line at a store, or to search for information as necessary.
However, this mobile nature of modern computing has made it difficult to provide targeted recommendations to a user. Previous recommender systems expected a user to be using a computer at home or at work, with an open mind to consider recommendations. A modern computer user is constantly on the go, and may look at his mobile device for short periods at a time. The user may accept a recommendation if it matches his current activity, and may ignore a recommendation that isn't appealing or convenient considering his current activity.
For example, a typical recommender system on a Web service may analyze behavior patterns for many individual users to make a recommendation that is targeted to a certain user. The recommender system may group multiple users that have a similar behavior pattern into a group, and may recommend a product or a service to an individual user based on purchases made by other users in his group. One example of this recommender system includes the movie recommendation system used by Netflix, Inc. to recommend movies to a viewer based on the movie ratings of other similar users. Another example is the product recommendation system used by Amazon, Inc. to recommend products to the user as the user browses Amazon's online catalog.
To be effective, the recommender system needs to store and process a history of detailed information about these users' behavior, and use this information to make future recommendations for these users. Also, when making a recommendation for a user, the recommender system needs to know what the user is doing, such as which merchandise items the user is browsing. However, many users don't feel comfortable having their behavior information tracked and analyzed by a recommender system on a remote server, and would prefer not to let the recommender system know what they are currently doing.